﻿using Microsoft.EntityFrameworkCore.Metadata.Internal;
using System.ComponentModel.DataAnnotations.Schema;
using System.ComponentModel.DataAnnotations;

namespace S.PurchaseAndSales.Read.Api.Dto
{
    public class GetCustomByIdDto
    {
        public int CustomerInformationId { get; set; }

        /// <summary>
        /// 客户类型
        /// </summary>
        public int CustomerType { get; set; }

        /// <summary>
        /// 负责人手机号
        /// </summary>
        [Column(TypeName = "nvarchar(50)")]
        [MaxLength(50)]
        public string ChargePersonPhone { get; set; }

        /// <summary>
        /// 负责人姓名
        /// </summary>
        [Column(TypeName = "nvarchar(50)")]
        [MaxLength(50)]
        public string ChargePersonName { get; set; }

        /// <summary>
        /// 客户名称
        /// </summary>
        [Column(TypeName = "nvarchar(50)")]
        [MaxLength(50)]
        public string CustomerName { get; set; }

        /// <summary>
        /// 身份证
        /// </summary>
        [Column(TypeName = "nvarchar(50)")]
        [MaxLength(50)]
        public string IdentityCard { get; set; }

        /// <summary>
        /// 所在地
        /// </summary>
        [Column(TypeName = "nvarchar(50)")]
        [MaxLength(50)]
        public string location { get; set; }

        /// <summary>
        /// 所属行业
        /// </summary>
        [Column(TypeName = "nvarchar(50)")]
        [MaxLength(50)]
        public string Industry { get; set; }

        /// <summary>
        /// 统一社会信用代码
        /// </summary>
        [Column(TypeName = "nvarchar(50)")]
        [MaxLength(50)]
        public string SocialCreditCode { get; set; }

        /// <summary>
        /// 助记码
        /// </summary>
        [Column(TypeName = "nvarchar(50)")]
        [MaxLength(50)]
        public string? MnemonicCode { get; set; }

        /// <summary>
        /// 客户的归集档案
        /// </summary>
        [Column(TypeName = "nvarchar(50)")]
        [MaxLength(50)]
        public string CollectionFile { get; set; }

        /// <summary>
        /// 客户阶段
        /// </summary>
        [Column(TypeName = "nvarchar(50)")]
        [MaxLength(50)]
        public string CustomerStage { get; set; }

        /// <summary>
        /// 客户自定义标签
        /// </summary>
        [Column(TypeName = "nvarchar(50)")]
        [MaxLength(50)]
        public string? CustomLabel { get; set; }

        /// <summary>
        /// 意向产品
        /// </summary>
        [Column(TypeName = "nvarchar(50)")]
        [MaxLength(50)]
        public string IntendedProduct { get; set; }

        /// <summary>
        /// 合作日期
        /// </summary>
        [Column(TypeName = "nvarchar(50)")]
        [MaxLength(50)]
        public DateTime CooperationDate { get; set; }

        /// <summary>
        /// 所属单位
        /// </summary>
        [Column(TypeName = "nvarchar(50)")]
        [MaxLength(50)]
        public string AffiliatedUnit { get; set; }

        /// <summary>
        /// 使用状态
        /// </summary>
        public int UseCondition { get; set; }

        /// <summary>
        /// 上级客户
        /// </summary>
        [Column(TypeName = "nvarchar(50)")]
        [MaxLength(50)]
        public string SuperiorCustomer { get; set; }

        /// <summary>
        /// 客户级别
        /// </summary>
        public int CustomerLevel { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        [Column(TypeName = "nvarchar(200)")]
        [MaxLength(200)]
        public string Remark
        {
            get; set;

        }/// <summary>
         /// 所属市场
         /// </summary>
        [Column(TypeName = "nvarchar(200)")]
        [MaxLength(200)]
        public string Market { get; set; }

        /// <summary>
        /// 业务员
        /// </summary>
        [Column(TypeName = "nvarchar(200)")]
        [MaxLength(200)]
        public string Salesman { get; set; }

        /// <summary>
        /// 创建人
        /// </summary>
        [Column(TypeName = "nvarchar(50)")]
        [MaxLength(50)]
        public string CreateBy { get; set; }

        /// <summary>
        /// 创建时间
        /// </summary>
        [Column(TypeName = "nvarchar(50)")]
        [MaxLength(50)]
        public DateTime CreateDate { get; set; }

        /// <summary>
        /// 修改人
        /// </summary>
        [Column(TypeName = "nvarchar(50)")]
        [MaxLength(50)]
        public string? UpdateBy { get; set; }

        /// <summary>
        /// 修改时间
        /// </summary>
        [Column(TypeName = "nvarchar(50)")]
        [MaxLength(50)]
        public DateTime? UpdateDate { get; set; }
        /// <summary>
        /// 所在地（省）ID
        /// </summary>
        public int ProvinceId { get; set; }

        /// <summary>
        /// 所在地（市）ID
        /// </summary>
        public int CityId { get; set; }

        /// <summary>
        /// 所在地（区）ID
        /// </summary>
        public int AreaId { get; set; }
    }
}
